home *** CD-ROM | disk | FTP | other *** search
/ Collection of Internet / Collection of Internet.iso / faq / comp / comp_la0 / cla_faq2 < prev    next >
Text File  |  1993-12-16  |  42KB  |  905 lines

  1. Newsgroups: comp.lang.ada,news.answers,comp.answers
  2. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!nic.hookup.net!swrinde!cs.utexas.edu!uunet!nntp.club.cc.cmu.edu!news.sei.cmu.edu!ajpo.sei.cmu.edu!cla-faq
  3. From: cla-faq@ajpo.sei.cmu.edu (Ada Info. Clearinghouse)
  4. Subject: comp.lang.ada FAQ 2/2
  5. Message-ID: <1993Dec16.140159.5948@sei.cmu.edu>
  6. Followup-To: poster
  7. Summary: comp.lang.ada Frequently Asked Questions. (Does *not* 
  8.          get into programming questions.)
  9. Sender: netnews@sei.cmu.edu (Netnews)
  10. Organization: Ada Information Clearinghouse
  11. Date: Thu, 16 Dec 1993 14:01:59 EST
  12. Approved: news-answers-request@MIT.Edu
  13. Lines: 889
  14. Xref: senator-bedfellow.mit.edu comp.lang.ada:15962 news.answers:15911 comp.answers:3060
  15.  
  16. Archive-name: comp-lang-ada/cla-faq2
  17.  
  18.  
  19. comp.lang.ada Frequently Asked Questions part 2 of 2
  20.  
  21. Effective date: 15 Dec 93
  22.  
  23. 20) Is there a list of good Ada books?
  24.  
  25.       Just for a list of texts, etc. (no evaluations or
  26.       recommendations), you might take a look at the ADABOOKS.HLP file
  27.       on the AdaIC Bulletin Board and in the public/ada-info directory
  28.       on the AJPO host (ajpo.sei.cmu.edu).
  29.  
  30.       Books for use in class (and others):
  31.       (from mfeldman@seas.gwu.edu (Michael B. Feldman))
  32.  
  33.       As co-chair of the SIGAda Education Committee, and a denizen of
  34.       the Internet newsgroups, I am often asked to give references for
  35.       "Ada textbooks."  This list responds to these many queries.  It
  36.       is far from exhaustive, merely a selected list of 26 books being
  37.       used successfully in undergraduate computer science courses.
  38.  
  39.       The six books in the Group 1 are written especially for students
  40.       without programming experience, who are learning Ada as their
  41.       first language.  Most of these can also cover at least part of a
  42.       typical CS2-level course.  The seven books in Group 2 use Ada as
  43.       their language of discourse but are "subject-oriented:" data
  44.       structures, file structures, compilers, comparative languages.
  45.       The thirteen books in Group 3 are either "Ada books" focusing on
  46.       the language features or more general books that use Ada, at
  47.       least in part, but do not fit obviously into a standard
  48.       curriculum "pigeonhole."
  49.  
  50.       I invite you to add to the list.  Please write your annotated
  51.       entry in the form I have used here and write or e-mail it to me.
  52.       I will include it in my next version and credit you as a
  53.       co-compiler of the list.
  54.  
  55.       Disclaimers: I wrote two of the texts listed here; I hope the
  56.       annotations are impartial enough.  And any annotated
  57.       bibliography is selective and opinionated.  Your mileage may
  58.       vary.
  59.  
  60.       Group 1: Books Suitable for a First Course in Programming
  61.  
  62.       Bover, D.C.C., K.J. Maciuas, and M.J. Oudshoorn.
  63.       Ada: A First Course in Programming and Software Engineering.
  64.       Addison-Wesley, 1992.
  65.       This work is, to our knowledge, the first Ada book to emerge
  66.       from Australia, from a group of authors with much collective
  67.       experience in teaching Ada to first-year students.  A number of
  68.       interesting examples are presented, for example, an Othello
  69.       game.  The book is full of gentle humor, a definite advantage in
  70.       a world of dry and serious texts.  In the book's favor is the
  71.       large number of complete programs.  On the other hand, it is
  72.       rather "European" in its terseness; American teachers may miss
  73.       the pedagogical apparatus and "hand-holding" typically found in
  74.       today's CS1 books.  Generic units are hardly mentioned.
  75.  
  76.       Culwin, F.
  77.       Ada: a Developmental Approach.
  78.       Prentice-Hall, 1992.
  79.       This work introduces Ada along with a good first-year approach
  80.       to software development methodology.  Much attention is paid to
  81.       program design, documentation, and testing.  Enough material is
  82.       present in data structures and algorithm analysis is present to
  83.       carry a CS2 course.  A drawback of the book is that the first
  84.       third is quite "Pascal-like" in its presentation order:
  85.       procedures, including nested ones, are presented rather early,
  86.       and packages are deferred until nearly the middle of the book.
  87.       This is certainly not a fatal flaw, but it will frustrate
  88.       teachers wishing a more package-oriented presentation.  The
  89.       programs and solutions are apparently available from the author.
  90.  
  91.       Feldman, M.B., and E.B. Koffman.
  92.       Ada: Problem Solving and Program Design.
  93.       Addison-Wesley, 1991.
  94.       This work combines the successful material from Koffman's CS1
  95.       pedagogy with a software-engineering-oriented Ada presentation
  96.       order.  Packages are introduced early and emphasized heavily;
  97.       chapters on abstract data types, unconstrained arrays, generics,
  98.       recursion, and dynamic data structures appear later.  The last
  99.       five chapters, combined with some language-independent algorithm
  100.       theory, can serve as the basis of a CS2 course.  A diskette with
  101.       all the fully-worked packages and examples (about 180) is
  102.       included; the instructor's manual contains a diskette with
  103.       project solutions.
  104.  
  105.       Savitch, W.J. and C.G. Petersen.
  106.       Ada: an Introduction to the Art and Science of Programming.
  107.       Benjamin/Cummings, 1992.
  108.       This is a straightforward adaptation of the well-known Savitch
  109.       Pascal books.  Ada is introduced in a Pascal-like order, with
  110.       subtypes and packages introduced halfway through the book.  This
  111.       is purely a CS1 book.  The final chapter covers dynamic data
  112.       structures.  There is no coverage of unconstrained array types;
  113.       generics are introduced at the halfway point to explain Text_IO,
  114.       then dropped until the final chapter.  The authors intended this
  115.       book to provide a painless transition to Ada for teachers of
  116.       Pascal; one wishes they had taken advantage of the chance to
  117.       show some of the interesting Ada concepts as well.  Program
  118.       examples from the text are available on disk, but only as part
  119.       of the instructor's manual; a solutions disk is available for a
  120.       fee from the authors.
  121.  
  122.       Skansholm, J.
  123.       Ada from the Beginning.
  124.       Addison Wesley, 1988.
  125.       This book was one of the first to use Ada with CS1-style
  126.       pedagogy.  There are excellent sections on the idiosyncracies of
  127.       interactive I/O (a problem in all languages), and a sufficient
  128.       number of fully-worked examples to satisfy students.  Generics,
  129.       linked lists and recursion are covered at the end; there is no
  130.       tasking coverage, but one would not expect this at CS1-level.
  131.  
  132.       Volper, D., and M. Katz.
  133.       Introduction to Programming Using Ada.
  134.       Prentice-Hall, 1990.
  135.       This book uses a heavily "spiraled" approach to Ada, and is
  136.       designed for a 2-semester course, covering nearly all of Ada
  137.       eventually.  There are lots of fully-coded examples, and good
  138.       pedagogical sections on testing, coding style, etc.  If you like
  139.       spiraling, you'll like this.  The down side is that you can't
  140.       find all you need on a given subject in one place.  It's at the
  141.       other end of the scale from the "Ada books" that follow the Ada
  142.       Language Reference Manual (LRM) order.
  143.  
  144.       Group 2: Other Books Intended for Undergraduate Courses
  145.  
  146.       Ben-Ari, M.
  147.       Principles of Concurrent and Distributed Programming.
  148.       Prentice-Hall 1990.  (OS/concurrency)
  149.       In my opinion, this is the best introduction to concurrency on
  150.       the market.  Ada notation is used for everything, but the focus
  151.       is on concurrency and not on Ada constructs per se.  I liked the
  152.       CoPascal notation of the first edition better, but this book is
  153.       still great.  A software disk is promised in the preface; I had
  154.       to work quite hard to get it from the publisher, which finally
  155.       had to express-ship it from England.  The software comes with a
  156.       tiny Ada-ish interpreter, complete with Pascal source code,
  157.       adapted from Wirth's Pascal/S via CoPascal.  There are also some
  158.       real Ada programs, most of which I've tested and found correct
  159.       and portable.
  160.  
  161.       Feldman, M.B.
  162.       Data Structures with Ada.
  163.       Prentice Hall, 1985 (now distributed by Addison-Wesley).
  164.       (CS2/data structures)
  165.       This book is a reasonable approximation to a modern CS2 book:
  166.       "big O" analysis, linked lists, queues and stacks, graphs,
  167.       trees, hash methods, and sorting, are all covered.  The Ada is a
  168.       bit old-fashioned, especially the lack of generics; the book was
  169.       published before compilers could handle generics.  The packages
  170.       and other programs are available free from the author.  The book
  171.       is currently under revision with Addison-Wesley and should
  172.       appear in 1993.
  173.  
  174.       Fischer, C., and R. LeBlanc.
  175.       Crafting a Compiler.
  176.       Benjamin Cummings, 1988.  (compilers)
  177.       This book uses Ada as its language of discourse and Ada/CS, a
  178.       usefully large Ada subset, as the language being compiled.  If
  179.       you can get the "plain Pascal" tool software by ftp from the
  180.       authors, you'll have a good translator-writing toolset.  Skip
  181.       the Turbo Pascal diskette version, which is missing too many
  182.       pieces to be useful.  I've used the book since it came out with
  183.       both undergrad and graduate compiler courses; it embodies a good
  184.       blend of theory and "how it's really done" coding.  Students
  185.       like it.  The authors have recently published a second version,
  186.       which uses C as its coding language but retains Ada/CS as the
  187.       language being compiled.
  188.  
  189.       Lomuto, N.
  190.       Problem-Solving Methods with Examples in Ada.
  191.       Prentice-Hall, 1987.  (algorithms)
  192.       Inspired by Polya's classic How to Solve It, this book can make
  193.       a nice addition to an Ada-oriented algorithms course.  It makes
  194.       too many assumptions about students' programming background to
  195.       use as a CS1 book, and doesn't teach enough Ada to be an "Ada
  196.       book."  But it makes nice reading for students sophisticated
  197.       enough to handle it.  I'd classify it as similar to Bentley's
  198.       Programming Pearls.
  199.  
  200.       Miller, N.E. and C.G. Petersen.
  201.       File Structures with Ada.
  202.       Benjamin/Cummings, 1990.  (file structures)
  203.       Designed for a straightforward ACM-curriculum file structures
  204.       course, this book succeeds at what it does.  There are good
  205.       discussions of ISAM and B-tree organizations.  The software can
  206.       be purchased a low cost from the authors; it seems to
  207.       approximate in Ada all those C-based file packages advertised in
  208.       programmer-oriented trade publications.
  209.  
  210.       Schneider, G.M., and S.C. Bruell.
  211.       Concepts in Data Structures and Software Development (with Ada
  212.       Supplement by P. Texel).
  213.       West, 1991.  (CS2/data structures)
  214.       This work is not, strictly speaking, an Ada book; rather, it is
  215.       a solid, language-independent approach to modern CS2.  The
  216.       language of discourse in the book is a Pascal-like ADT language
  217.       rather like Modula-2 in style; some examples are coded in legal
  218.       Pascal.  The Ada supplement makes it usable in an Ada-based
  219.       course, but the supplement is rather too terse (100 pages of
  220.       large type) for my taste, and insufficiently well keyed to the
  221.       book chapters.  The supplement's effectiveness would be greatly
  222.       enhanced by full translations to Ada of a large number of the
  223.       book's examples.
  224.  
  225.       Sebesta, R.W.
  226.       Concepts of Programming Languages.
  227.       Benjamin Cummings, 1989.  (comparative languages)
  228.       If you've been around for a while, you might remember the late
  229.       Mark Elson's 1975 book by the same title.  This is similar: a
  230.       concept-by-concept presentation, with -- in each chapter --
  231.       examples taken from several languages.  There is a nice
  232.       impartial presentation of Ada along with the others.  I
  233.       especially like the chapters on abstraction and exception
  234.       handling.  The book covers -- comparatively, of course -- most
  235.       of the lanuages you'd like to see, including C, Lisp, Smalltalk,
  236.       etc., with nice historical chapters as well.  The book is
  237.       readable; my students like it.  Our undergraduate and graduate
  238.       courses both use it as a base text.
  239.  
  240.       Group 3: A Selection of Other Ada-Related Books
  241.  
  242.       Barnes, J.
  243.       Programming in Ada.  (3rd edition)
  244.       Addison Wesley, 1989.
  245.       Barnes' work has been one of the most popular "Ada books."  Some
  246.       students find it hard to see how the pieces fit together from
  247.       Barnes' often fragmentary examples; it is difficult to find
  248.       complete, fully-worked out, compilable programs.  A version is
  249.       available with the entire Ada Language Reference Manual bound in
  250.       as an appendix.
  251.  
  252.       Booch, G.
  253.       Object-Oriented Design, with Applications.
  254.       Benjamin Cummings, 1991.
  255.       This is a good comparative introduction to the "object-oriented
  256.       (OO)" concept.  The first half gives a balanced presentation of
  257.       the issues in OO Design; the second half gives nontrivial
  258.       examples from Ada, Smalltalk, C++, CLOS, and Object Pascal.  The
  259.       author tries to sort out the difference between object-based
  260.       (weak inheritance, like Ada) and object-oriented (like C++)
  261.       languages.  My only real complaint is that Booch should have
  262.       worked out at least some of his case studies using several
  263.       different languages, to highlight the similarities and
  264.       differences in the language structures.  As it is, each case
  265.       study is done in only a single language.  The good news is that
  266.       the book is remarkably free of the hyperbolic claims one
  267.       sometimes finds in the OO literature.  I think this book could
  268.       be used successfully in a second- level comparative languages
  269.       course.
  270.  
  271.       Booch, G.
  272.       Software Components with Ada.
  273.       Benjamin Cummings, 1987.
  274.       This work is an encyclopedic presentation of data structure
  275.       packages from Booch's OOD point of view.  It is great for those
  276.       who love taxonomies.  It's not for the faint-hearted, because
  277.       the volume of material can be overwhelming.  It could serve as a
  278.       text for an advanced data structures course, but it's thin in
  279.       "big O" analysis and other algorithm-theory matters.  The book
  280.       is keyed to the (purchasable) Booch Components.
  281.  
  282.       Booch, G.
  283.       Software Engineering with Ada.  (2nd edition)
  284.       Benjamin Cummings 1987.
  285.       Another of the classical "Ada books."  Introduces Booch's OOD
  286.       ideas.  Not for use to introduce Ada to novices, in my opinion;
  287.       there are some nice fully-worked case studies but they begin too
  288.       far into the book, after long sections on design, philosophy,
  289.       and language elements.  The earlier chapters contain too much
  290.       fragmentary code, a common flaw in books that follow the LRM
  291.       order.
  292.  
  293.       Bryan, D.L., and G.O. Mendal.
  294.       Exploring Ada, Volumes 1 and 2.
  295.       Prentice-Hall, 1990 and 1992 respectively.
  296.       This is an excellent study of some of the interesting nooks and
  297.       crannies of Ada; it sometimes gets tricky and
  298.       "language-lawyerly."  Volume 2 takes up tasking, generics,
  299.       exceptions, derived types, scope and visibility; Volume 1 covers
  300.       everything else.  The programs are short and narrowly focused on
  301.       specific language issues.  If you like Bryan's "Dear Ada" column
  302.       in Ada Letters, you'll like this book.  It is certainly not a
  303.       book for beginners, but great fun for those who know Ada already
  304.       and wish to explore.
  305.  
  306.       Burns, A.
  307.       Concurrent Programming in Ada.
  308.       Cambridge University Press, 1985.
  309.       I used this book for years in my concurrency course.  It's
  310.       roughly equivalent to Gehani's book, but its age is showing.
  311.       Cambridge Press is not always easy to get books from, especially
  312.       in the US.
  313.  
  314.       Cohen, N.
  315.       Ada as a Second Language.
  316.       McGraw Hill, 1986.
  317.       This book is a quite comprehensive exploration of Ada which
  318.       follows the LRM in its presentation order.  My graduate students
  319.       like it because it is more detailed and complete than
  320.       alternative texts.  It's an excellent book for students who know
  321.       their languages and want to study all of Ada.  There are good
  322.       discussions of "why's and wherefore's" and many long,
  323.       fully-worked examples.
  324.  
  325.       Gauthier, M.
  326.       Ada: Un Apprentissage (in French).
  327.       Dunod, 1989.
  328.       I found this an especially interesting, almost philosophical
  329.       approach to Ada.  The first section presents Ada in the context
  330.       of more general laguage principles: types, genericity,
  331.       reusability.  The second section introduces testing and
  332.       documentation concerns, as well as tasking; the third considers
  333.       generics and variant records in the more general context of
  334.       polymorphism.  For mature Ada students in the French-speaking
  335.       world, and others who can follow technical French, this book can
  336.       serve as a different slant on the conventional presentations of
  337.       the language.  An English translation would be a real
  338.       contribution to the Ada literature.
  339.  
  340.       Gehani, N.
  341.       Ada: an Advanced Introduction (2nd edition).
  342.       Prentice-Hall, 1989.
  343.       I've always liked Gehani's literate writing style; he knows his
  344.       languages and treats Ada in an interesting, mature, and balanced
  345.       fashion.  This book comes with a diskette sealed in the back of
  346.       the book, which is advantageous because the book has numerous
  347.       nontrivial, fully-worked examples.
  348.  
  349.       Gehani, N.
  350.       Ada: Concurrent Programming (2nd edition).
  351.       Silicon Press, 1991.
  352.       This is a less formal, more Ada-oriented presentation of
  353.       concurrency than the Ben-Ari work.  I use both books in my
  354.       concurrency course; its real strength is the large number of
  355.       nontrivial, fully worked examples.  Gehani offers a nice
  356.       critique of the tasking model from the point of view of an OS
  357.       person.  The preface promises the availability of a software
  358.       disk from the publisher.
  359.  
  360.       Nyberg, K.
  361.       The Annotated Ada Reference Manual.  (2nd edition)
  362.       Grebyn Corporation, 1991.
  363.       This is the definitive work on Ada legalities, because it
  364.       presents not only the full text of the LRM but also the official
  365.       Ada Interpretations.  These commentaries, interleaved with the
  366.       LRM text, have been approved and promulgated by the Ada Board
  367.       and the various standards organizations, and are binding upon
  368.       compiler developers.  I recommend this book as an essential
  369.       volume in the library of every serious Ada enthusiast.
  370.  
  371.       Shumate, K.
  372.       Understanding Ada.  (2nd edition)
  373.       John Wiley, 1989.
  374.       This would make a CS1 book if it included more overall pedagogy,
  375.       independent of language constructs.  Otherwise it is a nice
  376.       introduction to Ada in fairly gentle steps.  Lots of completely
  377.       worked examples, right from the start.  Doesn't follow the LRM
  378.       order, which is great.
  379.  
  380.       Watt, D.A., B.A. Wichmann, and W. Findlay.
  381.       Ada Language and Methodology.
  382.       Prentice-Hall, 1987.
  383.       This work presents some interesting programming projects, and
  384.       the coverage of design and testing--at the level of a first-year
  385.       student--is quite good.  The first third of the book
  386.       concentrates heavily on classical control and data structures,
  387.       leaving exceptions and packages until the "programming in the
  388.       large" material in the second third.  CS2 teachers will find too
  389.       little concentration on algorithm analysis.  On the other hand,
  390.       tasking and machine-dependent programming are covered.  Like the
  391.       Shumate work, this book would make a suitable introduction to
  392.       Ada for students with a semester or so of programming
  393.       experience; it "jumps in" too quickly to satisfy the needs of
  394.       neophytes and is not well-tailored to CS1 or CS2 needs.
  395.  
  396. 21) Where can I get language translators?
  397.  
  398.       The AdaIC maintains a Products and Tools Database on its
  399.       bulletin board (703/614-0215), and one of the categories is
  400.       translators.  (The list of products should not be considered
  401.       exhaustive; if you wish to suggest additions, please contact the
  402.       AdaIC.)  Besides access to the database via the bulletin board,
  403.       you can also call the AdaIC (800-AdaIC-11 or 703/685-1477) and
  404.       ask for a customized search.
  405.  
  406.       In addition to all the usual caveats, however, it should also be
  407.       noted that translation itself is a controversial issue.
  408.  
  409.       When a project makes the transition to Ada from some other
  410.       language, one question that arises is whether to translate older
  411.       code into Ada.  Among the immediate considerations are how much
  412.       of the code can in fact be translated by a program intended for
  413.       that purpose, versus how much will still require re-coding by
  414.       hand.  And will the translated code suffer a significant loss in
  415.       speed of execution?  Further, a project must consider whether
  416.       the translated code will reflect sound software engineering and
  417.       be readily understandable and modifiable.  Or will the
  418.       translated code be merely "Fortranized Ada" or "Cobolized Ada",
  419.       or the like, possibly retaining limitations present in the
  420.       earlier code?  Portability is also a problem.
  421.  
  422.       The resolution of such issues will require an understanding of
  423.       the earlier code, an appreciation of the similarities and
  424.       differences between its language and Ada, and an evaluation of
  425.       the translation program under consideration.
  426.  
  427. 22) What is the status of the POSIX/Ada work?
  428.  
  429.       (from emery@mitre.org (dave emery))
  430.  
  431.       The IEEE approved IEEE Standard 1003.5-1992 in June 1992.  This
  432.       is the Ada Binding to the facilities defined in ISO
  433.       9945-1:1989/IEEE 1003.1-1990, the POSIX System Services.
  434.  
  435.       IEEE Standards Committee P1003.5 is now working on Ada bindings
  436.       to IEEE draft standards 1003.4, Real-Time Extensions and
  437.       1003.4a, Threads Extensions.  Current plans call for an IEEE
  438.       ballot in October 1993, with IEEE approval in September 1995.
  439.       For more information, contact the P1003.5 Chairman, Jim Lonjers
  440.       (lonjers@vfl.paramax.com, 805/987-9457).
  441.  
  442. 23) How can I get a copy of POSIX/Ada?  Is it available via FTP?
  443.  
  444.       (from emery@mitre.org (dave emery))
  445.  
  446.       You can buy a copy of the standard from the IEEE.  The order
  447.       number is "SH 15354", and the mailing address is "IEEE Service
  448.       Center, 445 Hoes Lane, Piscataway, NJ 08855-1331".  They will
  449.       accept credit-card orders at 1-800/678-4333.  The cost is $62.50
  450.       + $5.00 s/h ($43.75 + $4.00 s/h for IEEE Members).
  451.  
  452.       Current IEEE policy prohibits electronic distribution of IEEE
  453.       standards.  Proceeds from the sale of IEEE standards help
  454.       support the IEEE standards program.  However, The POSIX P1003.5
  455.       committee has been able to work out an arrangement with the IEEE
  456.       to make the POSIX/Ada package specifications available for
  457.       distribution via e-mail and anonymous FTP from the AJPO host
  458.       (ajpo.sei.cmu.edu).  Look in the public/bindings/POSIX
  459.       directory.  The AJPO files are also mirrored at the PAL.  (See
  460.       29) for more on the PAL, 25) for anonymous FTP.)
  461.  
  462. 24) Where can I get Ada benchmark programs?
  463.  
  464.       In addition to the information below, you may also wish to look
  465.       at the AdaIC flyer "How to Obtain Benchmark Performance Test
  466.       Suites and Results", flyer V15, file benchmrk.hlp.<date> on the
  467.       AJPO host (ajpo.sei.cmu.edu).  For more on the AdaIC and
  468.       downloading files, see questions 14), 15), and 25).
  469.  
  470.       (from pd@SEI.CMU.EDU (Patrick Donohoe))
  471.  
  472.       a.  The Ada Evaluation System:
  473.  
  474.       The Ada Evaluation System (AES) may be obtained from the British
  475.       Standards Institute at the following address:
  476.  
  477.            Software Product Services
  478.            Software Engineering Department
  479.            BSIQA
  480.            P.O. Box 375
  481.            Milton Keynes MK14 6LL
  482.            United Kingdom
  483.            Tel: 0908 220908
  484.            UUCP: sed@bsiqa.uucp
  485.            (Internet: bsiqa!sed@uunet.uu.net)
  486.  
  487.       As of February 1993, the current version is the DIY-MAPSE-01
  488.       version.  It is available at a cost of 3,000 pounds sterling.
  489.       BSI also offers a validation service at a cost of 24,000 pounds
  490.       sterling.  Principal documents are a User's Manual, a Reference
  491.       Manual, and a Test Description Document.
  492.  
  493.       The Ada Evaluation System (AES) was merged with the Ada
  494.       Compiler Evaluation Capability (ACEC) under a joint agreement
  495.       between the Ministry of Defence of the United Kingdom and the
  496.       Department of Defense of the United States that was signed in
  497.       June of 1991.  The merged product has been released as the Ada
  498.       Compiler Evaluation System (ACES), which is the latest version
  499.       of the ACEC.
  500.  
  501.       b.  The Ada Compiler Evaluation Capability/Ada Compiler
  502.       Evaluation System:
  503.  
  504.       The Ada Compiler Evaluation System (ACES) may be obtained
  505.       from:
  506.  
  507.            Data and Analysis Center for Software (DACS)
  508.            Attn: Document Dataset Ordering
  509.            Kamen Sciences Corporation
  510.            P.O. Box 120
  511.            Utica, NY 13503-0120
  512.            Tel: 315/734-3696; Fax: 315/734-3699
  513.            Internet: dacs@kaman.com
  514.  
  515.       There are three documents: the User's Guide, the Reader's Guide,
  516.       and the Version Description Document.  The total cost for the
  517.       software (on 6250-bpi 9-track VMS Backup tape) and documentation
  518.       is 100 US dollars.
  519.  
  520.       ACES is also available for downloading via anonymous FTP from
  521.       the AJPO host computer, where it can be found in the
  522.       /public/aces directory.  It can also be downloaded from the
  523.       Public Ada Library (PAL -- see question 29).
  524.  
  525.       c.  Hartstone Benchmarks:
  526.  
  527.       Electronic-mail requests for Hartstone should be sent to the
  528.       following Internet address:
  529.  
  530.            hartstone-info@sei.cmu.edu
  531.  
  532.       The reply message will contain full details of how to obtain
  533.       source code and documentation by various means, including
  534.       anonymous ftp.  There is no charge for the Hartstone source
  535.       code.
  536.  
  537.       For people without Internet access, the address to send requests
  538.       to is:
  539.  
  540.            REST Transition Services
  541.            Software Engineering Institute
  542.            Carnegie Mellon University
  543.            Pittsburgh, PA 15213-3890
  544.            Phone: 412/268-7787
  545.  
  546.       Hartstone source code may also be retrieved from the PIWG
  547.       bulletin board.  (See below.)
  548.  
  549.       d.  The PIWG Benchmarks:
  550.  
  551.       The ACM Performance Issues Working Group (PIWG) benchmarks may
  552.       be obtained in one of three ways:
  553.  
  554.            1.  Via anonymous ftp from the ajpo.sei.cmu.edu machine.
  555.                Users should issue the command "ftp ajpo.sei.cmu.edu"
  556.                and log in using the word "anonymous" as the login name
  557.                and an identifying string (e.g., the user's e-mail
  558.                address) as password.  Change directory ("cd" command)
  559.                to the "public/piwg/piwg_11_92" directory and use the
  560.                ftp file-transfer commands to retrieve the files.  The
  561.                README file contains information about using the
  562.                benchmarks.
  563.  
  564.            2.  Via the PIWG bulletin board.
  565.                Ideally, users should access this from a PC (rather
  566.                than a dumb terminal) using a modem capable of sending
  567.                and receiving at 1200 baud or higher.  The number of
  568.                the bulletin board is 412/268-7020.  Once connected to
  569.                the bulletin board, users will be able to navigate
  570.                their way around the system using simple menus that the
  571.                system provides.  The point of contact for this service
  572.                is Gene Rindels, 412/268-6728.
  573.  
  574.            3.  Via a written request or telephone request to the
  575.                following service:
  576.  
  577.                    PIWG Distribution
  578.                    Software Engineering Institute
  579.                    Carnegie Mellon University
  580.                    Pittsburgh, PA 15213-3890
  581.                    Tel: 412/268-7787
  582.  
  583.                As of February 1993, the current release of the PIWG
  584.                suite is the one dated 11/92.  There is no charge for
  585.                the PIWG benchmarks.  Documentation for the PIWG
  586.                benchmarks consists principally of the READ.ME file
  587.                distributed with the suite and comments in the
  588.                individual test programs and command files.  There is
  589.                also additional information about the PIWG suite in the
  590.                Winter 1990 special edition of Ada Letters (Vol. X,
  591.                No. 3, special edition on Ada Performance Issues).
  592.  
  593. 25) The AJPO host has many Ada information files available for
  594.     downloading by anonymous FTP.  But I don't have FTP service on
  595.     the Internet host where I have an account.  Is there any way I
  596.     can get those files?
  597.  
  598.       The AJPO host, ajpo.sei.cmu.edu, will provide mail-server
  599.       capabilities on an experimental basis.  The available services
  600.       provided by this automatic mail server are: services, Re, help,
  601.       info, man, directory, and file-request.  To request a service,
  602.       send e-mail to "ftpmail@ajpo.sei.cmu.edu" and place its name in
  603.       the Subject line of the mail message, followed by any needed
  604.       parameters.  The mail server will respond to your request with
  605.       either the information you requested or an error message.
  606.  
  607.       The following are common examples on how to request services
  608.       from the AJPO host mail server:
  609.  
  610.       ----------------------------------------------------------------
  611.       1) To get "help" --
  612.  
  613.       To: ftpmail@ajpo.sei.cmu.edu
  614.       Subject: help
  615.  
  616.       ----------------------------------------------------------------
  617.  
  618.       2) To get "man" pages of a particular service, such as
  619.       "directory" --
  620.  
  621.       To: ftpmail@ajpo.sei.cmu.edu
  622.       Subject: man directory
  623.  
  624.       This service takes as a parameter the name of a service, and
  625.       returns a manual page on that service.
  626.  
  627.       ----------------------------------------------------------------
  628.  
  629.       3) To get a "directory" listing of the AJPO anonymous ftp area
  630.       (/public) --
  631.  
  632.       To: ftpmail@ajpo.sei.cmu.edu
  633.       Subject: directory
  634.  
  635.       The "directory" service takes as an optional parameter a file or
  636.       directory name, and returns the results of an "ls -l" on that
  637.       parameter.  For example, to get a listing of the
  638.       /public/ada-info directory you would submit a message with the
  639.       Subject of:
  640.  
  641.       Subject: directory ada-info
  642.  
  643.       The filename pattern may include wildcards as defined by the C
  644.       shell.  For example, to get a listing of the /public directories
  645.       beginning with "p" you would submit a message with the Subject
  646.       of:
  647.  
  648.       Subject: directory p*
  649.  
  650.       ----------------------------------------------------------------
  651.  
  652.       4) Use "file-request" to get /public/README file --
  653.  
  654.       To: ftpmail@ajpo.sei.cmu.edu
  655.       Subject: file-request README
  656.  
  657.       The "file-request" service takes as an optional parameter a
  658.       filename, and will return the contents of the file.  Text files
  659.       are returned verbatim, while binary files are encoded via the
  660.       Unix "uuencode" command.  Large files (greater than 1000 lines
  661.       long) will be split into multiple mail messages.  For example,
  662.       to get the file "README" in the /public/ada-info directory you
  663.       would submit a message with the Subject of:
  664.  
  665.       Subject: file-request ada-info/README
  666.  
  667.       ----------------------------------------------------------------
  668.  
  669.       Below is a sample response to a "help" request.
  670.  
  671.       From: FTP Mail Server <ftpmail@ajpo.sei.cmu.edu>
  672.       Message-Id: <9301141628.AA26473@ajpo.sei.cmu.edu>
  673.       To: adainfo@ajpo.sei.cmu.edu
  674.       Subject: Re: help
  675.       In-Reply-To: <9301141628.AA26462@ajpo.sei.cmu.edu>
  676.       Content-Type: text/plain; charset=us-ascii
  677.  
  678.       You have sent electronic mail to the Ada Joint Programs Office
  679.       automatic mail server.  This server is based on the
  680.       ServiceMail(tm) Tookit from Enterprise Integration Technologies.
  681.  
  682.       In general, you may request a service by placing its name in the
  683.       Subject line of a mail message, followed by any needed
  684.       parameters.  The mail server will respond to your request with
  685.       either the information you requested or an error message.
  686.  
  687.       Here is a brief description of the available services:
  688.  
  689.       services:       This service returns a list of the available
  690.                       services.
  691.  
  692.       Re:             This service discards all messages with "Re:" in
  693.                       the subject line.  This is to prevent mail
  694.                       loops.
  695.  
  696.       help:           This service returns this help message.
  697.  
  698.       info:           This service returns this help message.
  699.  
  700.       man:            This service takes as a parameter the name of a
  701.                       service, and returns a manual page on that
  702.                       service.
  703.  
  704.       directory:      This service takes as an optional parameter a
  705.                       file or directory name, and returns the results
  706.                       of an "ls -l" on that parameter.  The root of
  707.                       the file structure is the AJPO anonymous FTP
  708.                       area.
  709.  
  710.       file-request:   This service takes as an optional parameter a
  711.                       file name, and will return the contents of the
  712.                       file.  The root of the file structure is the
  713.                       AJPO anonymous FTP area.  Text files are
  714.                       returned verbatim, while binary files are
  715.                       encoded via the Unix "uuencode" command.  Large
  716.                       files (greater than 1000 lines long) will be
  717.                       split into multiple mail messages.
  718.  
  719.       Try 'man <service>' to get more information on a particular
  720.       service.  Please report bugs and other problems to
  721.       ftpmail-request@ajpo.sei.cmu.edu.
  722.  
  723. 26) What is ASIS?
  724.  
  725.       The Ada Semantic Interface Specification is a layered
  726.       vendor-independent open architecture.  ASIS queries and services
  727.       provide a consistent interface to information within the Ada
  728.       Program Library created at compile time.  Clients of ASIS are
  729.       shielded and free from the implementation details of each Ada
  730.       compiler vendor's proprietary library and intermediate
  731.       representation.
  732.  
  733.       The latest working draft for ASIS is ASIS 1.1.0, dated July
  734.       1993.  The ASIS Working Group (ASISWG), under sponsorship of the
  735.       AJPO, intends to evolve this working draft into an ISO standard
  736.       complementing the Ada 9X standard.  The current ASIS working
  737.       draft is based on Ada 83.  Your comments are welcome, if you
  738.       wish to see replies to your comments, please join the e-mail
  739.       discussion group (discussed below) first.
  740.  
  741. 27) How can I find out more about ASIS?  Can I take part in development?
  742.  
  743.       There is an electronic mail discussion forum for the ASISWG:
  744.       asis@stars.reston.paramax.com
  745.  
  746.       This forum is also where announcements of ASISWG meetings will
  747.       appear.  To have your e-mail address added to this forum, send
  748.       e-mail to:
  749.  
  750.              asis-request@stars.reston.paramax.com
  751.  
  752.       Include your preferred e-mail address, name, telephone number,
  753.       and surface-mail address.
  754.  
  755.       A separate, announcements-only, mailing list is available for
  756.       those that do not wish to participate in the technical
  757.       discussions.  That list is asis-info@stars.reston.paramax.com.
  758.       To have your name added to the info list, send e-mail to:
  759.  
  760.              asis-info-request@stars.reston.paramax.com
  761.  
  762. 28) How can I get hold of ASIS?
  763.  
  764.       ASIS 1.1.0 (along with the earlier version 1.1) is avaiable for
  765.       anonymous FTP from ajpo.sei.cmu.edu.  It is available, as a
  766.       series of files, in the public/asis directory.
  767.  
  768.       If you have Internet FTP access, run your FTP program, your log
  769.       might look something like this:
  770.  
  771.          $ ftp ajpo.sei.cmu.edu
  772.          Name (ajpo.sei.cmu.edu:you): anonymous
  773.          331 Guest login ok, send your complete e-mail address as password.
  774.          Password:you@your-company.com
  775.          ftp> cd public/asis/v1.1.0
  776.          ftp> binary
  777.          ftp> get asis_1.1.0.asc
  778.          200 PORT command successful.
  779.          150 Opening BINARY mode data connection for /bin/compress.
  780.          (799382 bytes).
  781.          ....
  782.          ftp> bye
  783.  
  784.       (The "binary" command is not always necessary.  Some host ftp
  785.       programs drop form-feed characters.  The binary command will
  786.       prevent this behavior.)
  787.  
  788.       If you do not have Internet ftp access, the AJPO host provides
  789.       mail-server capabilities.  To get more information about the
  790.       mail-server, send e-mail to "ftpmail@ajpo.sei.cmu.edu", and
  791.       address your message as:
  792.  
  793.          To: ftpmail@ajpo.sei.cmu.edu
  794.          Subject: help
  795.  
  796.       To get a copy of the /public/asis/README file, address your
  797.       e-mail as:
  798.  
  799.          To: ftpmail@ajpo.sei.cmu.edu
  800.          Subject: file-request asis/README
  801.  
  802.       To get a "directory" listing of /public/asis/v1.1.0, address
  803.       your e-mail as:
  804.  
  805.          To: ftpmail@ajpo.sei.cmu.edu
  806.          Subject: directory asis
  807.  
  808.       To get any of the various files, e.g.,
  809.       /public/asis/v1.1.0/asis_1.1.0.asc.ps,
  810.       address your e-mail as:
  811.  
  812.          To: ftpmail@ajpo.sei.cmu.edu
  813.          Subject: file-request asis/v1.1.0/asis_1.1.0.asc.ps
  814.  
  815.       The filename pattern may include the "*" wildcard.
  816.  
  817.       All files have been Unix compressed.  If you drop the .Z
  818.       extension in the FTP get command (as in the example above), FTP
  819.       should decompress on the fly.  If you get the .Z file, type
  820.       "uncompress <filename.Z>" before viewing or printing the files.
  821.  
  822.       The files currently available include:
  823.  
  824.       asis_1.1.0.ada.Záááááá- full interface, includes all Annexes, in
  825.                               a form suitable for compilation with an
  826.                               Ada 83 compiler
  827.  
  828.       asis_1.1.0.asc.Záááááá- full interface listing, includes all
  829.                               Annexes, line-numbered, 7-bit ASCII, 369
  830.                               pages
  831.  
  832.       asis_1.1.0.asc.ps.Zááá- Postscript version of the .asc file
  833.  
  834.       asis_1.1.0.index.Záááá- line-number/function-name cross-index
  835.                               for interface, 7-bit ASCII
  836.  
  837.       asis_1.1.0.index.ps.Z - Postscript version of the .index file
  838.  
  839.       asis_1.1.0.decom.Záááá- just the Data Decomposition Annex
  840.                               interface
  841.  
  842.       asis_1.1.0.decom.ps.Z - Postscript version of the .decom file
  843.  
  844.       asis_1.1.0.bnf.ps.Zááá- "ASIS/LRM Crossreference", Ada 83 LRM
  845.                               BNF notation correlated with ASIS
  846.                               interfaces, Postscript.  (Still
  847.                               in progress, final version expected in
  848.                               Q4'93.)
  849.  
  850.       asis_1.1.0.imp.ps.Zááá- "ASIS: Detailed Semantics and
  851.                               Implementatation Requirements",
  852.                               additional discussion of the ASIS
  853.                               interface semantics, implementation
  854.                               considerations, and requirements, should
  855.                               be read by application programmers as
  856.                               well, PostScript.  (Still in progress,
  857.                               final version expected in Q4'93.)
  858.  
  859.       Every asis_1.1.0 file larger than about 30Kb is also available
  860.       as a group of smaller files.
  861.  
  862. 29) Are there any free, public-domain, or other general-access software
  863.     repositories that contain Ada source code and information on reuse?
  864.  
  865.       There are a number of them, among them AdaNet and the Public Ada
  866.       Library.
  867.  
  868.       Public Ada Library (formerly Ada Software Repository):
  869.  
  870.       Formerly the Ada Software Repository (ASR), the Public Ada
  871.       Library (PAL) is a collection of programs, components, tools,
  872.       general information, and educational materials; taking up more
  873.       than 100 megabytes, it contains the source code for
  874.       approximately 355 distinct items as documented in its Master
  875.       Index.  Previously housed on the SIMTEL20 host computer, it is
  876.       now located at Washington University at St. Louis's host
  877.       (wuarchive.wustl.edu -- which had been a mirror site for the
  878.       ASR).  The PAL is available for anonymous ftp.
  879.  
  880.       The PAL has its own FAQ, a copy of which is stored on the AJPO
  881.       host (ajpo.sei.cmu.edu, in directory public/comp-lang-ada, file
  882.       name public-ada-library).  It is also available on rtfm.mit.edu,
  883.       which stores FAQ files posted to news.answers.
  884.  
  885.       AdaNet:
  886.       (from mprice@rbse.Mountain.Net (Margie Price))
  887.  
  888.       AdaNET is a component of the Repository Based Software
  889.       Engineering (RBSE) Program sponsored by NASA's Technology
  890.       Utilization Division.  It is a public-domain reuse library
  891.       containing value-added software from ASR (PAL), STARS, JPL, many
  892.       educational institutions, and various other sources.  Our
  893.       non-software information includes relevant research papers,
  894.       standards, and technical reports.
  895.  
  896.       AdaNET also distributes components on floppy disks.  All of its
  897.       services are free of charge.
  898.  
  899.       For more information, contact AdaNET Client Service at
  900.       1-800/444-1458 or lacey@rbse.mountain.net.
  901.  
  902. ====================================end=======================================
  903.  
  904.  
  905.